JavaScript Number and Its Methods
JavaScript Number and Its Methods
Do You Know?
JavaScript uses a 64-bit double-precision floating-point format to represent numbers, which means both integers and decimals are treated as floating-point numbers. This is based on the IEEE 754 standard.
Introduction to Number Data Type
In JavaScript, the Number data type represents both integers and floating-point numbers. Numbers in JavaScript are 64-bit double-precision values, meaning they follow the IEEE 754 standard for representing both whole and fractional numbers.
Integer Example: let num1 = 42;
Floating-point Example: let num2 = 3.14;
JavaScript automatically converts between integer and floating-point representations as necessary. Other forms of numbers like hexadecimal (e.g., 0xFF), exponential notation (e.g., 1e6), and octal (ES6 feature) are also supported.
Number Methods
JavaScript provides several methods and properties to manipulate and work with numbers. Let’s explore the most commonly used methods.
Number() Constructor
The Number() function converts any value into a number.
let num1 = Number('42'); // 42
let num2 = Number('3.14'); // 3.14
let num3 = Number(true); // 1
let num4 = Number(false); // 0
toString()
The toString() method converts a number to a string. It can also accept an optional radix argument to return the string representation of the number in a different base (binary, octal, hexadecimal).
let num = 42;
console.log(num.toString()); // '42'
console.log(num.toString(2)); // '101010' (binary)
console.log(num.toString(16)); // '2a' (hexadecimal)
toFixed()
The toFixed() method formats a number to a fixed number of decimal places. It returns the result as a string.
let num = 3.14159;
console.log(num.toFixed(2)); // '3.14'
console.log(num.toFixed(0)); // '3'
toPrecision()
The toPrecision() method formats a number to a specified precision (total number of digits). It returns the result as a string.
let num = 123.456;
console.log(num.toPrecision(4)); // '123.5'
console.log(num.toPrecision(2)); // '1.2e+2'
parseInt()
The parseInt() function parses a string and returns an integer of the specified radix (base). If no radix is provided, it assumes base 10 for typical usage but defaults to base 16 for strings starting with "0x" (hexadecimal).
console.log(parseInt('42')); // 42 (decimal)
console.log(parseInt('0xF', 16)); // 15 (hexadecimal)
parseFloat()
The parseFloat() function parses a string and returns a floating-point number. It reads until it encounters a non-numeric character.
console.log(parseFloat('3.14')); // 3.14
console.log(parseFloat('3.14abc')); // 3.14
isNaN()
The isNaN() function checks whether a value is NaN (Not-a-Number). It returns true if the value is NaN, and false otherwise. It is useful for checking invalid number conversions.
console.log(isNaN('Hello')); // true
console.log(isNaN(42)); // false
isFinite()
The isFinite() method checks whether a value is a finite number. It returns true for any number except Infinity, -Infinity, or NaN.
console.log(isFinite(100)); // true
console.log(isFinite(Infinity)); // false
console.log(isFinite(NaN)); // false
Number.isInteger()
The Number.isInteger() method checks if the value is an integer.
console.log(Number.isInteger(42)); // true
console.log(Number.isInteger(3.14)); // false
Number.isNaN()
The Number.isNaN() method is more reliable than the global isNaN() function for checking whether a value is NaN, because it does not coerce the argument to a number first.
console.log(Number.isNaN(NaN)); // true
console.log(Number.isNaN('Hello')); // false
Number.MAX_VALUE and Number.MIN_VALUE
Number.MAX_VALUE: Represents the largest positive number that can be represented in JavaScript.
Number.MIN_VALUE: Represents the smallest positive number (closest to zero) that can be represented.
console.log(Number.MAX_VALUE); // 1.7976931348623157e+308
console.log(Number.MIN_VALUE); // 5e-324
Number.POSITIVE_INFINITY and Number.NEGATIVE_INFINITY
Number.POSITIVE_INFINITY: Represents positive infinity in JavaScript.
Number.NEGATIVE_INFINITY: Represents negative infinity.
console.log(Number.POSITIVE_INFINITY); // Infinity
console.log(Number.NEGATIVE_INFINITY); // -Infinity
Number.isSafeInteger()
The Number.isSafeInteger() method checks whether the value is a safe integer. A safe integer is an integer that can be represented exactly in JavaScript (between -(2^53 - 1) and 2^53 - 1).
console.log(Number.isSafeInteger(42)); // true
console.log(Number.isSafeInteger(9007199254740992)); // false
Special Number Values
JavaScript recognizes certain special values in addition to regular numbers:
NaN: "Not-a-Number," which occurs when a mathematical operation fails.
Infinity: A value that represents infinity in mathematical operations.
-Infinity: A value that represents negative infinity.
console.log(1 / 0); // Infinity
console.log(-1 / 0); // -Infinity
console.log(0 / 0); // NaN
Avoid This
Don't use the global isNaN() function for NaN checks, as it has inconsistencies. Use Number.isNaN() instead.
Automatic Type Conversion
JavaScript automatically converts numbers to strings when necessary. This is known as type coercion, and it happens, for example, when concatenating a number and a string.
let num = 10;
let str = 'The number is ' + num;
console.log(str); // 'The number is 10'
Summary
- Numbers in JavaScript are represented as 64-bit double-precision floating-point numbers.
- JavaScript provides methods like
Number(),toString(),toFixed(),toPrecision(),parseInt(),parseFloat(), and others to work with numbers. - Special values include
NaN,Infinity, and-Infinity. - JavaScript performs automatic type conversion (coercion) when necessary.
Discussion
Kalpesh Shewale
I am grateful to have completed my Full Stack Development with AI course at Apnaguru. The faculty's support and interactive classes helped me discover my potential and shape a positive future. Their guidance led to my successful placement, and I highly recommend this institute.
Kalpesh Shewale
I am grateful to have completed the Full Stack Development with AI course at Apnaguru. The faculty's dedicated support and hands-on approach during the classes enabled me to unlock my potential and shape a promising future. Their guidance helped me secure a placement with a good package. I highly recommend this course, and for those interested, I also suggest doing the offline version at the center for an enhanced learning experience.

Raveesh Rajput
Completing the Full Stack Development with AI course at Apnaguru was a game-changer for me. I secured an internship through this course, which gave me invaluable hands-on experience. I strongly recommend this course to anyone looking to break into the tech industry. For the best experience, I suggest attending the offline sessions at the center, where the interactive learning environment really enhances the overall experience.

swapnil shinde
Apnaguru’s Full Stack Development with AI course provided me with more than just knowledge—it opened doors to an internship that gave me real-world, hands-on experience. If you're serious about a career in tech, this course is a must. I highly recommend attending the offline sessions for the most immersive and interactive learning experience!
Kalpana Waghmare
I recently completed the Full Stack Developer with AI course on ApnaGuru, and I couldn’t be more impressed! The structure of the course, with well-organized topics and self-assessment MCQs after each section, really helped reinforce my learning. The assignments were particularly valuable, allowing me to apply what I learned in a practical way. Overall, it’s an excellent program that effectively combines full-stack development and AI concepts. Highly recommended for anyone looking to enhance their skills!
Completing the Full Stack Development with AI course at Apnaguru was a pivotal moment in my career. It not only deepened my understanding of cutting-edge technologies but also directly led to an internship that provided practical, real-world experience. If you're aiming to enter the tech field, this course is an excellent stepping stone. I especially recommend attending the in-person sessions at the center, where the dynamic, hands-on learning approach truly maximizes the benefits of the program.

Mahesh Bhosle
I completed the Full Stack Development course at Apnaguru, and it was a valuable experience. The focus on live assignments and projects gave me real-world insights, helping me apply my skills in a professional setting. The interactive live sessions, mock interviews, and question banks were excellent for job preparation. Apnaguru’s company-like environment also helped me get accustomed to real work dynamics. Overall, this course equipped me with the skills and confidence needed for a career in full-stack development. I highly recommend it to anyone seeking hands-on learning and industry relevance.
I recently completed the Full Stack course at ApnaGuru, and I’m genuinely impressed! The curriculum is well-structured, covering both front-end and back-end technologies comprehensively. The instructors are knowledgeable and provide hands-on experience through practical projects. The supportive community and resources available made learning enjoyable and engaging. Overall, it’s a great choice for anyone looking to kickstart a career in web development. Highly recommend!

Adarsh Ovhal
I recently participated in the Full Stack Development With AI Course program, and it has been incredibly beneficial. The guidance I received was tailored to my individual needs, thanks to their advanced use of AI tools. The Trainers were knowledgeable and supportive, helping me explore various educational and career paths. The resources and workshops provided were practical and insightful, making my decision-making process much clearer. Overall, I highly recommend this program to any student looking for IT Field and personalized career guidance!
Shirish Panchal
I’m currently pursuing the Full Stack Developer with AI course at ApnaGuru Training Center, and I'm impressed with what I've experienced so far. The curriculum is well-structured, covering key concepts in both front-end and back-end development, along with AI fundamentals. The instructors are knowledgeable and supportive, which makes it easy to engage and ask questions. I particularly appreciate the hands-on projects that help reinforce what I’m learning. While I’m still in the process of completing the course, I feel that I'm building a strong foundation for my future in tech. I would recommend ApnaGuru to anyone looking to explore full stack development with AI!
Apnaguru Training Center stands out as a top-notch institute for IT education. They provide a wide array of courses, including Full Stack Development, Java Full Stack, Python, Automation Testing, DevOps, and MERN/MEAN Stack, all designed to meet the demands of the modern tech industry.

Mahesh Bhosle
Apnaguru Training Center is a fantastic place for IT education! They offer a variety of courses, including Full Stack Development, Java Full Stack, and Python, all taught by knowledgeable instructors who are committed to student success. The curriculum is up-to-date and includes hands-on projects that enhance learning.
dandewar srikanth
I had an excellent experience with the full-stack web development program at APNAGURU. The instructor had in-depth knowledge of both frontend and backend technologies, which made the concepts easy to grasp. From working on HTML, CSS, JavaScript, and React for the frontend to Node.js and MongoDB for the backend, the learning curve was very smooth.